🦊Ultimate SD upscale
https://gyazo.com/d3b6f13de466be0cb0a17f2565d6f9e3
4Kや8Kといった超高解像度の画像を生成しようとすると誤家庭でもなければHires.fixを使っても計算量が多すぎて生成出来ません
そこで、画像を拡大してタイル状に分割 → それぞれをimage2image → 合体、とすることで鮮明で大きな画像を作ろうとしたのがこのTIleです
Tiled Diffusionで見るTileの弱点
やらなくて良いですが、Tileの仕組みを知るために少し基本的な部分を見ていきましょう
🪢カスタムノード
https://gyazo.com/6ff5e63c42367c9ef8ffd8e2a89a61c5https://gyazo.com/daf241e640303e9bdbebdbdb06ae4afa
🟨画像を1024px × 1024pxにリサイズ
🟩一つのタイルの大きさを512px × 512pxに設定
つまり、左下の子犬の画像をキレイに4分割して、それぞれをimage2imageしたことになります
見て分かるように、タイルの境界線がハッキリ見えてしまうだけでなく、全体としてまとまりがありません
denoiseを下げれば多少ましになるとはいえ、これはTileの1つ目の大きな弱点です
overlap
https://gyazo.com/d6bf859530ae65b7b09ca8a2b2e3006bhttps://gyazo.com/fec3f15e6e4ff7110d3f5ff110f0faa2
🟩tile_overlapを256pxに設定
今度はタイルをキレイに並べるのではなく、少し重ねて並べます
https://gyazo.com/5f5d51e77955a55c8df142e45d8d12f5
この工夫によって境界線がわかりにくくなりました
他にもサンプリングステップ毎にタイルの並び方を変えたりと、境界線を目立たせないための工夫はいくつもあります
より細かく重ねれば境界線はわかりにくくなるかもしれませんが、当然生成する枚数も増える → 多くの時間がかかるためほどほどに
さて、これで完璧!と思ったら、いやちょっと待ってください?🤔
右下の方、子犬の中に子犬が錬成されてしまってます
Tileのもう一つの弱点
一度overlapを0、denoise 1にして生成してみましょう
https://gyazo.com/b180b2b157a72b030b099dcb6f7c046f
プロンプトには一匹の犬とありますが、左上、右上、左下、右下それぞれのタイルで一匹の犬を生成しようとするため、全体としては四匹の犬が描かれることになります
denoiseを下げてもそれは変わらず、犬の中に犬が錬成されてしまうわけですね
さてどうしましょう?
タイルごとにプロンプトを変える
一番シンプルなのがこの方法です
全部のタイルに一匹の犬と書くのではなく、犬の右耳,右目、犬の左耳,左目、犬の右足、犬の左足と書けば犬が四匹描かれることはありません
ただし、この方法はあまり使われていません
すべてのタイルに別々のプロンプトを書くなんてやってられない
今ならtaggerやVLMでキャプション付けする手もありますが、多分全部にa dogと書く気がします Stable Diffusionはそれほどプロンプトに忠実に描けない
複雑なプロンプトのみならず、5つの車・赤い箱の上の青い玉、のような単純なプロンプトも基本的にうまく描けません
犬の顔の右上四分の一だけ、みたいなものも難しいでしょう
ControNet Tile
基本的な動作としては、ControlNetに入力された画像の構造を保持したまま新しい画像を生成します ただ、結果的にその画像になにが描かれているかStable Diffusionが理解しているような挙動をするため、これを利用します
https://gyazo.com/a0d8adb6b4cbd35562588238db87f71ehttps://gyazo.com/1bf02bf5900f379735c6a29a7aa1935e
🟦ControlNetApplyAdvancedノード
overlap 0 でさらにdenoiseも1ですが、もとの画像の特徴を強力に保持しています このworkflowのように、ControlNetのstrengthが1.0だと流石に強すぎてプロンプトの意味がないので少し下げたほうが良いですね
その他、広まってはいないが良さげなアイデア
overlap × ContolNet Tileでパーフェクトタイルアップスケール
https://gyazo.com/763660c52564a7af2f5dce9eaa81e20fhttps://gyazo.com/3e4bf6018a4e4500f3bbd14151ce56e7
🟩overlap 256px
🟦ControlNet Tile : strength 0.6
キレイな仕上がりですね!
🥳Ultimate SD upscale
オマタセシマシタ本題
(☆ゝω・)b⌒☆wogikaze.icon